package com.cloud.screen.api.entity;

import com.fasterxml.jackson.annotation.JsonFormat;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.Date;

@Table(name = "human_info")
public class HumanInfo {
	@Id
	@Column(name = "human_id")
	private Long humanId;

	@Column(name = "user_name")
	private String userName;

	@Column(name = "human_password")
	private String humanPassword;

	@Column(name = "human_name")
	private String humanName;

	@Column(name = "identity_num")
	private String identityNum;

	private Integer gender;

	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
	private Date birthday;

	@Column(name = "political_status")
	private String politicalStatus;

	@Column(name = "position_level")
	private String positionLevel;

	private String nation;

	private String education;

	@Column(name = "human_nature")
	private String humanNature;
	
	@Column(name = "human_type")
	private String humanType;

	@Column(name = "occup_flag")
	private Integer occupFlag;

	@Column(name = "lawcard_flag")
	private Integer lawcardFlag;

	@Column(name = "lawyer_flag")
	private Integer lawyerFlag;

	private String telephone;

	@Column(name = "law_card_num")
	private String lawCardNum;

	@Column(name = "law_card_type")
	private String lawCardType;

	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
	@Column(name = "issue_date")
	private Date issueDate;

	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
	@Column(name = "effective_start")
	private Date effectiveStart;

	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
	@Column(name = "effective_end")
	private Date effectiveEnd;

	@Column(name = "issue_subject_name")
	private String issueSubjectName;

	@Column(name = "unit_id")
	private Long unitId;

	@Column(name = "unit_name")
	private String unitName;

	@Column(name = "unit_code")
	private String unitCode;

	@Column(name = "login_flag")
	private Integer loginFlag;

	@Column(name = "delete_flag")
	private Integer deleteFlag;

	@Column(name = "display_order")
	private Integer displayOrder;

	@Column(name = "education_major")
	private String educationMajor;

	@Column(name = "region")
	private String region;

	@Column(name = "domain")
	private String domain;

	@Column(name = "organ_id")
	private Integer organId;

	@Column(name = "organ_name")
	private String organName;


	@Transient
	private String occupFlagValue;

	@Transient
	private String lawcardFlagValue;

	/**
	 * @return human_id
	 */
	public Long getHumanId() {
		return humanId;
	}

	/**
	 * @param humanId
	 */
	public void setHumanId(Long humanId) {
		this.humanId = humanId;
	}

	/**
	 * @return user_name
	 */
	public String getUserName() {
		return userName;
	}

	/**
	 * @param userName
	 */
	public void setUserName(String userName) {
		this.userName = userName;
	}

	/**
	 * @return human_password
	 */
	public String getHumanPassword() {
		return humanPassword;
	}

	/**
	 * @param humanPassword
	 */
	public void setHumanPassword(String humanPassword) {
		this.humanPassword = humanPassword;
	}

	/**
	 * @return human_name
	 */
	public String getHumanName() {
		return humanName;
	}

	/**
	 * @param humanName
	 */
	public void setHumanName(String humanName) {
		this.humanName = humanName;
	}

	/**
	 * @return identity_num
	 */
	public String getIdentityNum() {
		return identityNum;
	}

	/**
	 * @param identityNum
	 */
	public void setIdentityNum(String identityNum) {
		this.identityNum = identityNum;
	}

	/**
	 * @return gender
	 */
	public Integer getGender() {
		return gender;
	}

	/**
	 * @param gender
	 */
	public void setGender(Integer gender) {
		this.gender = gender;
	}

	/**
	 * @return birthday
	 */
	public Date getBirthday() {
		return birthday;
	}

	/**
	 * @param birthday
	 */
	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	public String getPoliticalStatus() {
		return politicalStatus;
	}

	public void setPoliticalStatus(String politicalStatus) {
		this.politicalStatus = politicalStatus;
	}

	public String getPositionLevel() {
		return positionLevel;
	}

	public void setPositionLevel(String positionLevel) {
		this.positionLevel = positionLevel;
	}

	public String getNation() {
		return nation;
	}

	public void setNation(String nation) {
		this.nation = nation;
	}

	public String getEducation() {
		return education;
	}

	public void setEducation(String education) {
		this.education = education;
	}

	public String getHumanType() {
		return humanType;
	}

	public void setHumanType(String humanType) {
		this.humanType = humanType;
	}

	public String getHumanNature() {
		return humanNature;
	}

	public void setHumanNature(String humanNature) {
		this.humanNature = humanNature;
	}

	public void setLawCardType(String lawCardType) {
		this.lawCardType = lawCardType;
	}

	public Integer getOccupFlag() {
		return occupFlag;
	}

	public void setOccupFlag(Integer occupFlag) {
		this.occupFlag = occupFlag;
	}

	public Integer getLawcardFlag() {
		return lawcardFlag;
	}

	public void setLawcardFlag(Integer lawcardFlag) {
		this.lawcardFlag = lawcardFlag;
	}

	public Integer getLawyerFlag() {
		return lawyerFlag;
	}

	public void setLawyerFlag(Integer lawyerFlag) {
		this.lawyerFlag = lawyerFlag;
	}

	public String getTelephone() {
		return telephone;
	}

	public void setTelephone(String telephone) {
		this.telephone = telephone;
	}

	public String getLawCardNum() {
		return lawCardNum;
	}

	public void setLawCardNum(String lawCardNum) {
		this.lawCardNum = lawCardNum;
	}

	public String getLawCardType() {
		return lawCardType;
	}

	public Date getIssueDate() {
		return issueDate;
	}

	public void setIssueDate(Date issueDate) {
		this.issueDate = issueDate;
	}

	public Date getEffectiveStart() {
		return effectiveStart;
	}

	public void setEffectiveStart(Date effectiveStart) {
		this.effectiveStart = effectiveStart;
	}

	public Date getEffectiveEnd() {
		return effectiveEnd;
	}

	public void setEffectiveEnd(Date effectiveEnd) {
		this.effectiveEnd = effectiveEnd;
	}

	public String getIssueSubjectName() {
		return issueSubjectName;
	}

	public void setIssueSubjectName(String issueSubjectName) {
		this.issueSubjectName = issueSubjectName;
	}

	public Long getUnitId() {
		return unitId;
	}

	public void setUnitId(Long unitId) {
		this.unitId = unitId;
	}

	public String getUnitName() {
		return unitName;
	}

	public void setUnitName(String unitName) {
		this.unitName = unitName;
	}

	public String getUnitCode() {
		return unitCode;
	}

	public void setUnitCode(String unitCode) {
		this.unitCode = unitCode;
	}

	public Integer getLoginFlag() {
		return loginFlag;
	}

	public void setLoginFlag(Integer loginFlag) {
		this.loginFlag = loginFlag;
	}

	public Integer getDeleteFlag() {
		return deleteFlag;
	}

	public void setDeleteFlag(Integer deleteFlag) {
		this.deleteFlag = deleteFlag;
	}

	public Integer getDisplayOrder() {
		return displayOrder;
	}

	public void setDisplayOrder(Integer displayOrder) {
		this.displayOrder = displayOrder;
	}

	public String getEducationMajor() {
		return educationMajor;
	}

	public void setEducationMajor(String educationMajor) {
		this.educationMajor = educationMajor;
	}

	public String getRegion() {
		return region;
	}

	public void setRegion(String region) {
		this.region = region;
	}

	public String getDomain() {
		return domain;
	}

	public void setDomain(String domain) {
		this.domain = domain;
	}

	public Integer getOrganId() {
		return organId;
	}

	public void setOrganId(Integer organId) {
		this.organId = organId;
	}

	public String getOrganName() {
		return organName;
	}

	public void setOrganName(String organName) {
		this.organName = organName;
	}

	public String getOccupFlagValue() {
		return occupFlagValue;
	}

	public void setOccupFlagValue(String occupFlagValue) {
		this.occupFlagValue = occupFlagValue;
	}

	public String getLawcardFlagValue() {
		return lawcardFlagValue;
	}

	public void setLawcardFlagValue(String lawcardFlagValue) {
		this.lawcardFlagValue = lawcardFlagValue;
	}
}
